﻿using IMaverick.Physics.Extensions;

namespace IMaverick.Physics
{
    public class Weight: Dimension<Weight>
    {
        static Weight()
        {
            InitializeOrdersOfMagnitude("g");
            Units.Add(new Unit { Factor = 1000000, Name = "t" });
        }

        public Weight() : base() { }
        private Weight(Unit unit) : base(unit) { }

        public static Weight Gram { get { return new Weight(); } }
        public static Weight Kilogram { get { return GetNewInstanceFor(OrderOfMagnitude.Kilo); } }
        public static Weight Milligram { get { return GetNewInstanceFor(OrderOfMagnitude.Milli); } }
        public static Weight Microgram { get { return GetNewInstanceFor(OrderOfMagnitude.Micro); } }
        public static Weight Ton { get { return new Weight(Units["t"]); ; } }
    }
}
